1. Field of the Invention
The present invention relates in general to code division multiple access (CDMA) communications systems and, more particularly, to an improved method of interference cancellation for CDMA communications system.
2. Description of Related Art
Multiple access communication techniques enable multiple users, such as mobile telephones, to share the same path, for example a radio channel, to communicate to one receiver or base station at the same time. Examples of multiple access techniques include frequency division multiple access (FDMA) wherein different users are assigned to different frequency bands of the channel, time division multiple access (TDMA) wherein different users are assigned to non-overlapping time slots of the channel, and code division multiple access (CDMA). In CDMA, different users are assigned unique spreading codes, commonly pseudorandom noise (PN) codes, which are high bandwidth bitstreams used to multiply a respective baseband signal before transmission. Multiplying a baseband signal by a spreading code increases the bandwidth of the signal by a factor known as the spreading gain to spread the baseband signal across the channel.
Upon receipt at the base station, each user's signal is separated and decoded by one of a plurality of processing units under the control of a controller. The controller instructs each of the processing units on which user signal to separate and decode. Each processing unit separates and decodes a user signal by first multiplying the total received signal by the complex conjugate of the desired user's spreading code. This removes the desired user's spreading code from the received signal or despreads the desired signal back to its original bandwidth and makes other users' signals look like high bandwidth noise. The despread signal, together with interference due to other users' signals, i.e., multiple access interference, is used to decode the desired user's transmitted bits, treating the interference as additive nose. The quality of reception at the base station can be substantially improved if the multiple access interference, rather than being treated as noise, is canceled from the received signal before decoding the desired user's signal.
To this end, interference cancellation (IC) techniques are employed to try to reduce multi-access interference in a CDMA receiver by estimating the interference due to other users and then subtracting the estimated interference from the received signal before the desired user's signal is decoded. A multistage or parallel interference canceler (PIC) consists of a number of concatenated stages which are usually identical to one another. The total received signal is passed to the first stage which makes tentative decisions as to the transmitted signals of all the users. While making a tentative decision on a particular user's signal, all other users' signals are treated as noise. For each user, an estimate of interference is obtained by respreading and combining the tentative signal decisions of all other users. The interference estimate is then subtracted from the received signal to form a "cleaner" signal for that user, which is passed to the next stage of interference cancellation. The next stage uses the cleaner signals for each user to again estimate and subtract interference. This is repeated for any desired number of stages with two to four stages being typical. Output signals from the final stage are used by a conventional CDMA decoder to make symbol decisions, i.e., to determine what symbols were in the received signal.
At each mobile telephone, bits of the user's signal can be modulated for example as binary phase-shift keying (BPSK) signals or a M-ary orthogonal signals (as in IS-95 North America CDMA standard) prior to spreading. With BPSK modulation, the baseband signal of a user takes the values +1 or -1 depending on whether the bit is a 0 or a 1. With M-ary orthogonal modulation, a group of log.sub.2 M bits are mapped onto one of M Walsh codes, each Walsh code having M bits taking values -1 or +1. For example, M=64 in the uplink of IS-95 CDMA standard, so that 6 bits are modulated to one of 64 Walsh codes with each Walsh code being 64 bits long. All M codes are orthogonal to each other. Decoding a BPSK modulated signal after despreading involves integrating over the bit interval and hardlimiting the result. For M-ary orthogonal modulation, decoding is done by computing the correlations of the despread signal with all the M possible Walsh codes and determining the strongest among them.
FIGS. 1 and 2 illustrate a prior art parallel interference cancellation (PIC) arrangement for an IS-95-like CDMA system using M-ary orthogonal modulation with Walsh-Hadamard functions as symbol waveforms. FIG. 1 schematically shows a general architecture of an N-stage PIC 100. The carrier is removed from the received signal to obtain the complex baseband received signal r, which is the sum of all signals received from the K simultaneous telephones or users plus noise.
The output of each stage 102, 104, 106 of the PIC 100 is a set of estimates of all the users' received signals: u.sub.1,n, u.sub.2,n, . . . , u.sub.k,n, where lower case n is used to indicate the number of any stage and lower case k is used to indicate the number of any user. As shown in FIG. 2, signal u.sub.k,n-1, which consists of user k's received signal plus an interference component, is used by the nth stage to reconstruct user k's received signal. One of k conventional decoders 108, 110, 112, coherent or non-coherent, for M-ary orthogonal CDMA signals are used to decide which one of the M Walsh functions or symbols was transmitted by the kth user. This decoder also performs the despreading operation by multiplying the input signal with the complex conjugate of the kth user's PN code.
The M-ary decoders 108, 110, 112 are followed by Walsh code generators 114, 116, 118 which produce the corresponding symbol waveforms so that a single symbol waveform is used for reconstruction of each symbol waveform. The reconstructed symbol waveform for the kth user is then respread by multiplying it with the kth user's PN code and scaled by the complex valued channel estimate .alpha..sub.k to obtain the reconstructed user k's baseband received signal. For the kth user, the interfering signals from all other users thus reconstructed are subtracted from the total received signal r to produce u.sub.k,n. If the symbol decisions in the nth stage are sufficiently accurate, u.sub.k,n will have a lower interference component than u.sub.k,n-1. In general, the amount of interference reduced in the nth stage will depend on the correctness of symbol decisions in that stage.
The received baseband signal r is given to all the inputs for the first stage. The outputs of the Nth stage are used by conventional M-ary decoders 120, 122, 124 such as the ones described above to make final symbols decisions for each user.
It should be understood, however, that operations performed by each stage in the PIC 100 must be completed before the receipt of the next symbol in the received signal. Consequently, the processing speed of the processor implementing the PIC 100 must be extremely fast; and therefore, costly. If the need for such a memory was eliminated using a direct, hardwired implementation of FIG. 2, then the resulting, extremely complex, circuit would have inordinately high power consumption.